package com.modbus.tcp.controller;

import java.io.Console;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.List;

import com.modbus.tcp.utils.ApiReturnObject;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Bean;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.web.bind.annotation.*;
import com.modbus.tcp.domain.Modbusslave;
import com.modbus.tcp.service.IModbusslaveService;

import javax.annotation.Resource;


/**
 *  信息操作处理
 *
 * @author d
 * @date 2023-11-18
 */
@RestController
@RequestMapping("/modbusslave")
public class ModbusslaveController {

    @Autowired
    private IModbusslaveService modbusslaveService;

//    @Autowired
//    private Modbusslave modbusslave ;


    /**
     * 查询列表
     */
    @GetMapping("/list")
    public ApiReturnObject list(Modbusslave modbusslave,Integer pageNum,Integer pageSize) {
        if(pageNum != null && pageSize !=null ){
            PageHelper.startPage(pageNum,pageSize);
        }
        List<Modbusslave> list = modbusslaveService.selectModbusslaveList(modbusslave);
        PageInfo pageInfo = new PageInfo<>(list);
        return new ApiReturnObject("200","查询成功",pageInfo);
    }


    /**
     * 新增保存
     */

    @PostMapping("/add")
    public ApiReturnObject addSave(@RequestBody Modbusslave modbusslave) {
        modbusslaveService.insertModbusslave(modbusslave);
        return new ApiReturnObject("200","添加成功","");
    }


    /**
    * 详情
    */
    @GetMapping("/selectOne")
    public ApiReturnObject selectOne(Integer id){
        Modbusslave result = modbusslaveService.selectModbusslaveById(id);
        return new ApiReturnObject("200","查询成功",result);
    }

    /**
     * 修改保存
     */

    @PostMapping("/update")
    public ApiReturnObject editSave(@RequestBody Modbusslave modbusslave) {
        modbusslaveService.updateModbusslave(modbusslave);
        return new ApiReturnObject("200","修改成功","");
    }

    /**
     * 删除modbus服务器
     */

    @PostMapping("/del")
    public ApiReturnObject remove(String ids) {
        modbusslaveService.deleteModbusslaveByIds(ids);
        return new ApiReturnObject("200","删除成功","");
    }
}